-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
http con man: set response flag on downstream protocol error #8522
http con man: set response flag on downstream protocol error #8522
Conversation
This adds a new response flag, DPE, that is set when the downstream request has an HTTP protocol error. Signed-off-by: Spencer Lewis <slewis@squareup.com>
Signed-off-by: Spencer Lewis <slewis@squareup.com>
97adccc
to
1ce35f5
Compare
Signed-off-by: Spencer Lewis <slewis@squareup.com>
Signed-off-by: Spencer Lewis <slewis@squareup.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
a couple comments. Thanks for adding this!
docs/root/intro/version_history.rst
Outdated
@@ -3,6 +3,7 @@ Version history | |||
|
|||
1.12.0 (pending) | |||
================ | |||
* access log: added a new flag for downstream protocol error. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do you mind adding a ref to the field?
@@ -348,6 +349,9 @@ void ConnectionManagerImpl::resetAllStreams() { | |||
auto& stream = *streams_.front(); | |||
stream.response_encoder_->getStream().removeCallbacks(stream); | |||
stream.onResetStream(StreamResetReason::ConnectionTermination, absl::string_view()); | |||
if (response_flag) { | |||
stream.stream_info_.setResponseFlag(*response_flag); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: the style almost everywhere on the codebase is to use has_value()
and value()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, that is nicer. Thanks
Signed-off-by: Spencer Lewis <slewis@squareup.com>
706e274
to
47f5944
Compare
Force pushed the last commit because I forgot to sign 🙃 |
Signed-off-by: Spencer Lewis <slewis@squareup.com>
I think the failing test is a flake. When I locally run
I get
|
/retest |
🐴 hold your horses - no failures detected, yet. |
@junr03 is there a way to rerun the Azure tests? |
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
/azp run |
Commenter does not have sufficient privileges for PR 8522 in repo envoyproxy/envoy |
Signed-off-by: Spencer Lewis <slewis@squareup.com>
@htuch this change lgtm, do you mind doing the last pass given it needs API approval? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@envoyproxy/api-shepherds API LGTM. Ready to merge when CI passes.
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
Legit format failure. Please merge master and fix format. /wait |
* master: (54 commits) Update dependencies - Go, Bazel toos, xxHash, nanopb, rules_go, curl, protobuf, Jinja, yaml-cpp, re2 (envoyproxy#8728) test: increase coverage of listener_manager_impl.cc (envoyproxy#8737) test: modify some macros to reduce number of uncovered lines reported (envoyproxy#8725) build: add a script to setup clang (envoyproxy#8682) http: fix ssl_redirect on external (envoyproxy#8664) docs: update fedora build requirements (envoyproxy#8641) fix draining listener removal logs (envoyproxy#8733) dubbo: fix router doc (envoyproxy#8734) server: provide server health status when stats disabled (envoyproxy#8482) router: adding a knob to configure a cap on buffering for shadowing/retries (envoyproxy#8574) tcp proxy: add default 1 hour idle timeout (envoyproxy#8705) thrift: fix filter names in docs (envoyproxy#8726) Quiche changes to avoid gcc flags on Windows (envoyproxy#8514) test: increase test coverage in Router::HeaderParser (envoyproxy#8721) admin: add drain listeners endpoint (envoyproxy#8415) buffer filter: add content-length when ending stream with trailers (envoyproxy#8609) clarify draining option docs (envoyproxy#8712) build: ignore go-control-plane mirror git commit error code (envoyproxy#8703) api: remove API type database from checked in artifacts. (envoyproxy#8716) admin: correct help strings (envoyproxy#8710) ... Signed-off-by: Spencer Lewis <slewis@squareup.com>
ran ./tools/proto_format.sh fix Signed-off-by: Spencer Lewis <slewis@squareup.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
…oxy#8522) Signed-off-by: Spencer Lewis <slewis@squareup.com>
This adds a new response flag, DPE, that is set when the downstream
request has an HTTP protocol error.
Signed-off-by: Spencer Lewis slewis@squareup.com
Description: Protocol errors previously resulted in just the DC flag being set. Now, DPE will be set when there is a codec exception caused by the downstream request.
Risk Level: low
Testing: unit test
Docs Changes: update list of response flags
Release Notes: added release note
Fixes #8446